For my 3D videos:
Using a TV tuner card, I plugged the yellow composite cable into the card, and converted the red and white audio cables to a 1/8" stereo connection and plugged that into the soundcard.
The built-in ATi MultiMedia Center program that came with the card has a TV window that you can pop up on demand to watch TV from your computer screen. It also lets you take snapshots of the screen, as well as--importantly for my purposes--record the stream into a video file.
So as not to cause lag on the output by forcing an encoder to run in realtime while I'm playing, I record my videos in raw 320x240 30fps mode. This takes a LOT of disk space--almost 300MB per minute--but with a big enough hard drive, it won't be a problem. Press record and start playing. If I don't get a successful run after about 10 minutes, due to the huge potential file size, I stop the recording, delete the file, and try again.
After I get a success, I open the raw file in
Avidemux. There I trim out the unsuccessful parts of the run, so that what's left is the life or lives on which I achieve success, and nothing more. I save the resultant file by simply copying the video and audio bitstreams for the frames in question. This file is still 300MB/minute, but because it only contains the success, it's fewer minutes. I keep this file for archival purposes and delete the original larger file.
Obviously, if even a 45-second video takes up 200MB, you can't expect anyone do download that. It's compression time. If the run is discontinuous (such as a hunting stage with lives cropped out in between), I construct a title card. Currently, the title card variation as seen on Security Hall m5 and others is the most prevalent of mine, and I used that from April 1, 2006 (Security Hall m5 0:18.97) to January 11, 2007 (Sky Deck Knuckles 0:06.69). The title card variation as seen on my current Death Chamber m1 run (0:08.67) is the one I'll be using for the foreseeable future.
Avidemux can produce compressed videos as well, so where possible, I use it to encode the video with x264 in two-pass mode (usually around 400kbps). Audio is encoded with LAME at 96kbps CBR, with the volume reduced by 10 decibels (you wouldn't know while playing, but the TV program records videos with the sound really, really loud. This also overflows the sound channels, so that higher frequencies are gone from the video altogether, leaving ugly gaps in some cases, such as the easily-noticeable Final Rush no points or Final Chase all rings.) Unfortunately, my experience with Avidemux has found that for some reason it can't encode streams comprised of a mix of video files and still images without either losing the sound altogether or crashing. As a result, when I use a title card, I have to open the video in Windows Movie Maker and produce it as .wmv, with video+audio combined bitrate of 512kbps.
I'm hoping for that Avidemux bug to be fixed, and to find a program in Linux that can record a live stream coming into the TV card (MythTV's "record live TV" mode isn't really live, it's delayed by 2 seconds--clearly unacceptable when you're trying to see the result of your input on the game). If I can get that much, then I don't really have any further use for Windows.
There are other players that use a VHS tape as an intermediary step, or record a DVD while they're playing and send that to the computer (not to mention the lower-quality video producers who point a camera at the screen and hope for the best), but this is how I do it.